package com.zmzncs.lmtc.module.customer.pojo.ticket;

import com.baomidou.mybatisplus.annotation.TableName;

import java.math.BigDecimal;
import java.util.Date;
import java.io.Serializable;

import com.fasterxml.jackson.annotation.JsonFormat;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.EqualsAndHashCode;

/**
 * <p>
 * 
 * </p>
 *
 * @author JD
 * @since 2020-10-09
 */
@Data
@EqualsAndHashCode(callSuper = false)
@TableName("cust_ticket")
@ApiModel(value="CustTicket对象", description="")
public class CustTicket implements Serializable {

    private static final long serialVersionUID=1L;

    @ApiModelProperty(value = "id")
    private Long id;

    @ApiModelProperty(value = "优惠券id")
    private Long ticketId;

    @ApiModelProperty(value = "优惠券名称")
    private String ticketName;

    @ApiModelProperty(value = "优惠券编号")
    private String ticketCode;

    @ApiModelProperty(value = "客户id")
    private Long customerId;

    @ApiModelProperty(value = "使用界限金额")
    private BigDecimal useLimitMoney;

    @ApiModelProperty(value = "是否提示（0：不提醒，1：提醒）")
    private Integer tipsStatus;

    @ApiModelProperty(value = "优惠类型（1：满减；2：折扣；停车券）")
    private Integer preferentialType;

    @ApiModelProperty(value = "优惠金额")
    private BigDecimal preferentialMoney;

    @ApiModelProperty(value = "折率")
    private BigDecimal discountRate;

    @ApiModelProperty(value = "停车时长（分钟）（当use_type为11时有值）")
    private Integer parkingDuration;

    @ApiModelProperty(value = "使用类型（1：停车场通用；2：时长；3：月租；4：充值；10：商品；11：停车券）")
    private Integer useType;

    @ApiModelProperty(value = "店铺id（use_type为10和11时有值）")
    private Long shopId;

    @ApiModelProperty(value = "使用状态（0：未用；1：已用；2：待激活；）")
    private Integer status;

    @ApiModelProperty(value = "发放类型（1：平台发放；2：活动发放；3：自主领取）")
    private Integer grantType;

    @ApiModelProperty(value = "有效期天数（0为永久）")
    private Integer expiryDays;

    @ApiModelProperty(value = "有效期天数（新）")
    private Integer validityDays;

    @ApiModelProperty(value = "待激活有效期天数（当use_type为11时有值）")
    private Integer toBeActivatedValidityDays;

    @ApiModelProperty(value = "使用开始时间")
    private Date useBeginTime;

    @ApiModelProperty(value = "使用结束时间")
    private Date useEndTime;

    @ApiModelProperty(value = "领取时间")
    private Date receiveTime;

    @ApiModelProperty(value = "待激活到期时间")
    private Date toBeActivatedExpiryTime;

    @ApiModelProperty(value = "创建时间")
    private Date createTime;

    @ApiModelProperty(value = "修改时间")
    private Date updateTime;
}
